PARCOMPUTE = TRUE
N_CORE = parallel::detectCores()

Background

In this notebook, we repeat the analysis of 02_temporal_heterogeneity.Rmd for all of our core indicators.

Data setup

# Fetch the following sources and signals from the API 
# TODO: Add Google Symptoms "eventually"
source_names = c("doctor-visits", "fb-survey", "fb-survey",
                 "hospital-admissions", "hospital-admissions")
signal_names = c("smoothed_adj_cli", "smoothed_cli", "smoothed_hh_cmnty_cli", 
            "smoothed_adj_covid19_from_claims", "smoothed_adj_covid19_from_claims")
pretty_names = c("Doctor visits", "Facebook CLI", "Facebook CLI-in-community", 
          "Hospitalizations", "Hospitalizations")
target_names = c("Cases", "Cases", "Cases", "Cases", "Deaths")
geo_level = "county"

start_day = "2020-04-15"
end_day = NULL
cache_fname = 'cached_data/10_heterogeneity_core_indicators.RDS'

if (!file.exists(cache_fname)) {
  df_signals = vector("list", length(signal_names))
  for (i in 1:length(signal_names)) {
    df_signals[[i]] = suppressWarnings(
                        covidcast_signal(source_names[i], signal_names[i],
                                         start_day, end_day,
                                         geo_type=geo_level))
  }

  # Fetch USAFacts confirmed case incidence proportion (smoothed with 7-day 
  # trailing average)
  df_cases = suppressWarnings(
              covidcast_signal("usa-facts", "confirmed_7dav_incidence_prop",
                              start_day, end_day,
                              geo_type=geo_level))

  df_deaths = suppressWarnings(
              covidcast_signal("usa-facts", "deaths_7dav_incidence_prop",
                              start_day, end_day,
                              geo_type=geo_level))

  saveRDS(list(df_signals, df_cases, df_deaths), cache_fname)
} else {
  cached_data = readRDS(cache_fname)
  df_signals = cached_data[[1]]
  df_cases = cached_data[[2]]
  df_deaths = cached_data[[3]]
}

case_num = 500
geo_values = suppressWarnings(covidcast_signal("usa-facts", "confirmed_cumulative_num",
                              max(df_cases$time_value), 
                              max(df_cases$time_value))) %>%
  filter(value >= case_num) %>% pull(geo_value)
## Fetched day 2020-11-20: 1, success, num_entries = 3192
geo_values = suppressWarnings(covidcast_signal("usa-facts", "confirmed_cumulative_num",
                              '2020-11-01', 
                              '2020-11-01')) %>%
  filter(value >= case_num) %>% pull(geo_value)
## Fetched day 2020-11-01: 1, success, num_entries = 3192

Setup

sensorize_time_ranges = list(
      c(-7, -1),
      c(-10, -1),
      c(-14, -1),
      c(-21, -1),
      c(-14, -8),
      c(-21, -8),
      c(-28, -8),
      c(-35, -8),
      c(-42, -8))

for (ind_idx in 1:length(source_names)) {
  if (target_names[ind_idx] == 'Cases') {
    df_target = df_cases
  } else if (target_names[ind_idx] == 'Deaths') {
    df_target = df_deaths
  } else {
    stop(sprintf("No matching dataframe for target %s.", target_names[ind_idx]))
  }
  ind_df = tibble(df_signals[[ind_idx]]) %>% filter(geo_value %in% geo_values)
  ind_target = inner_join(ind_df, tibble(df_target),
                          by=c('geo_value', 'time_value')) %>% select (
        geo_value=geo_value,
        time_value=time_value,
        indicator_value=value.x,
        target_value=value.y,
      )
    ind_global_sensorized =  ind_target %>% group_by (
                geo_value,
            ) %>% group_modify ( ~ {
                fit = lm(target_value ~ indicator_value - 1, data =.x);
                tibble(time_value=.x$time_value,
                             indicator_value=.x$indicator_value,
                             target_value=.x$target_value,
                             sensorized_value=fit$fitted.values)
            }) %>% ungroup
    df_global_sensorized = ind_global_sensorized %>% transmute (
                geo_value=geo_value,
                signal='ind_sensorized',
                time_value=time_value,
                direction=NA,
                issue=lubridate::ymd('2020-11-01'),
                lag=NA,
                value=sensorized_value,
                stderr=NA,
                sample_size=NA,
                data_source='linear_sensorization',
            )
    attributes(df_global_sensorized)$geo_type = 'county'
    attributes(df_global_sensorized)$metadata$geo_type = 'county'
    class(df_global_sensorized) = c("covidcast_signal", "data.frame")

  base_cor_fname = sprintf('results/10_base_cors_%s_%s_%s.RDS',
                            source_names[ind_idx], signal_names[ind_idx],
                            target_names[ind_idx])
  if (!file.exists(base_cor_fname)) {
    df_cor_base_ind = covidcast_cor(df_signals[[ind_idx]], df_target,
                                   by='time_value', method='spearman')
    df_cor_sensorized_ind = covidcast_cor(df_global_sensorized, df_target,
                                         by='time_value', method='spearman')
    df_cor_base = rbind(df_cor_base_ind, df_cor_sensorized_ind)
    df_cor_base$Indicator = as.factor(c(rep('Raw', nrow(df_cor_base_ind)),
                                        rep('Sensorized (Spatial)',
                                            nrow(df_cor_sensorized_ind))))
    saveRDS(df_cor_base, base_cor_fname)
  } else {
    df_cor_base = readRDS(base_cor_fname)
  }



  sensorize_fname = sprintf('results/10_sensorize_cors_%s_%s_%s.RDS',
                            source_names[ind_idx], signal_names[ind_idx],
                            target_names[ind_idx])
  sensorize_val_fname = sprintf('results/10_sensorize_vals_%s_%s_%s.RDS',
                            source_names[ind_idx], signal_names[ind_idx],
                            target_names[ind_idx])
  if (!file.exists(sensorize_fname)) {
    sensorize_cors = vector('list', length(sensorize_time_ranges))
    ind_target_sensorized_list = vector('list', length(sensorize_time_ranges))
    for (outer_idx in 1:length(sensorize_time_ranges)) {
      sensorize_llim = sensorize_time_ranges[[outer_idx]][1]
      sensorize_ulim = sensorize_time_ranges[[outer_idx]][2]

      min_sensorize_date = lubridate::ymd(start_day) - sensorize_llim
      max_sensorize_date = max(ind_target$time_value)
      sensorize_date_offsets = 0:(max_sensorize_date-min_sensorize_date)

      joiner_df_list = vector('list', length(sensorize_date_offsets))
      for (idx in 1:length(sensorize_date_offsets)) {
        dt = sensorize_date_offsets[idx]
        sensorize_date = min_sensorize_date + dt
        joiner_df_list[[idx]] = tibble(
                          sensorize_date = sensorize_date,
                          time_value = sensorize_date + sensorize_llim:sensorize_ulim)
      }
      joiner_df = bind_rows(joiner_df_list)

      if (!PARCOMPUTE) {
        ind_sensorized_lm =  ind_target %>% full_join(
              joiner_df,
              on='time_value',
            ) %>%  group_by (
              geo_value,
              sensorize_date,
            ) %>% group_modify (
              ~ broom::tidy(lm(target_value ~ indicator_value - 1, data = .x))
            ) %>% ungroup
      } else {
        ind_grouped_list =   ind_target %>% full_join(
              joiner_df,
              on='time_value',
            ) %>%  group_by (
              geo_value,
              sensorize_date,
            ) %>% group_split
        ind_sensorized_lm = parallel::mclapply(ind_grouped_list, function(df) {
            broom::tidy(
              lm(target_value ~ indicator_value - 1, data = df)
            ) %>% mutate (
              geo_value = unique(df$geo_value),
              sensorize_date = unique(df$sensorize_date),
            )}, mc.cores = N_CORE) %>% bind_rows
      }
      ind_sensorized_wide = ind_sensorized_lm %>% select(
            geo_value,
            sensorize_date,
            term,
            estimate,
          ) %>% mutate (
            term = sapply(term, function(x) {ifelse(x=='(Intercept)',
                                                    'intercept',
                                                    'slope')}),
          ) %>% pivot_wider (
            id_cols = c(geo_value, sensorize_date),
            names_from=term,
            values_from=estimate,
          )
      ind_target_sensorized = ind_target %>% inner_join (
            ind_sensorized_wide,
            by=c('time_value'='sensorize_date',
                 'geo_value'),
          ) %>% mutate (
            sensorized_value = indicator_value * slope,
          )
      df_sensorized = ind_target_sensorized %>% transmute (
            geo_value=geo_value,
            signal='ind_sensorized',
            time_value=time_value,
            direction=NA,
            issue=lubridate::ymd('2020-11-01'),
            lag=NA,
            value=sensorized_value,
            stderr=NA,
            sample_size=NA,
            data_source='linear_sensorization',
          )
      attributes(df_sensorized)$geo_type = 'county'
      class(df_sensorized) = c("covidcast_signal", "data.frame")

      df_cor_sensorized_ind = covidcast_cor(df_sensorized, df_target,
                                           by='time_value', method='spearman')
      df_cor_sensorized_ind$Indicator = sprintf('Sensorized (TS, %d:%d)',
                                               sensorize_llim,
                                               sensorize_ulim)
      sensorize_cors[[outer_idx]] = df_cor_sensorized_ind
      ind_target_sensorized_list[[outer_idx]] = ind_target_sensorized
    }

    saveRDS(sensorize_cors, sensorize_fname)
    saveRDS(ind_target_sensorized_list, sensorize_val_fname)
  } else {
    sensorize_cors = readRDS(sensorize_fname)
    ind_target_sensorized_list = readRDS(sensorize_val_fname)
  }

  df_cor = bind_rows(df_cor_base, sensorize_cors)
  df_cor$Indicator = stringr::str_replace(df_cor$Indicator,
                                          'Sensorized ',
                                          "")
  df_cor$Indicator = factor(df_cor$Indicator,
                            levels=c('Raw',
                                     "(Spatial)",
                                     sapply(sensorize_time_ranges,
                                            function(x) {
                                              sprintf("(TS, %d:%d)",
                                                      x[[1]], x[[2]])
                                            })))

  plt = ggplot(df_cor, aes(x = time_value, y = value)) +
    geom_line(aes(color = Indicator)) +
    labs(title = sprintf("Correlation between %s and %s",
                         pretty_names[ind_idx],
                         target_names[ind_idx]),
         subtitle = "Per day",
         x = "Date", y = "Correlation") +
    theme(legend.position = "bottom")
  print(plt)
}
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Warning: Removed 203 row(s) containing missing values (geom_path).
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"

## Warning: Removed 193 row(s) containing missing values (geom_path).
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"

## Warning: Removed 193 row(s) containing missing values (geom_path).
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"

## Warning: Removed 203 row(s) containing missing values (geom_path).
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"
## Joining, by = "time_value"

## Warning: Removed 203 row(s) containing missing values (geom_path).

QUANTS = c(0.01, 0.99)

# TODO: Add more "core indicators"

for (ind_idx in 1:length(source_names)) {
  if (target_names[ind_idx] == 'Cases') {
    df_target = df_cases
  } else if (target_names[ind_idx] == 'Deaths') {
    df_target = df_deaths
  } else {
    stop(sprintf("No matching dataframe for target %s.", target_names[ind_idx]))
  }

  base_cor_fname = sprintf('results/10_base_cors_%s_%s_%s.RDS',
                            source_names[ind_idx], signal_names[ind_idx],
                            target_names[ind_idx])
  sensorize_fname = sprintf('results/10_sensorize_cors_%s_%s_%s.RDS',
                            source_names[ind_idx], signal_names[ind_idx],
                            target_names[ind_idx])
  sensorize_val_fname = sprintf('results/10_sensorize_vals_%s_%s_%s.RDS',
                            source_names[ind_idx], signal_names[ind_idx],
                            target_names[ind_idx])

  df_cor_base = readRDS(base_cor_fname)
  sensorize_cors = readRDS(sensorize_fname)
  sensorized_vals = readRDS(sensorize_val_fname)

  for (inner_idx in 1:length(sensorize_time_ranges)) {
    sv = sensorized_vals[[inner_idx]]
    print(summary(sv$slope))
    print(slope_limits <- quantile(sv$slope, QUANTS, na.rm=TRUE))
    plt = ggplot(
      sensorized_vals[[inner_idx]],
      aes(x=time_value,
          y=slope),
    ) + geom_point (
      alpha=0.1,
      size=0.5,
    ) + geom_hline (
      yintercept=0,
      colour='white',
    ) + stat_summary (
        aes(y=slope,
            group=1,
            colour='median'),
        fun=median,
        geom="line",
        group=1,
    ) + stat_summary (
        aes(y=slope,
            group=1,
            colour='+/- mad'),
        fun=function(x) { median(x) + mad(x) },
        geom="line",
        group=1,
    ) + stat_summary (
        aes(y=slope,
            group=1,
            colour='+/- mad'),
        fun=function(x) { median(x) - mad(x) },
        geom="line",
        group=1,
    ) + scale_colour_manual(
        values=c("median"="maroon",
                 "+/- mad"="darkgreen")
    ) + labs(
      colour=''
    ) + ggtitle(
      sprintf("Slope distribution for %s[%s], fitted on t in %d:%d",
              pretty_names[ind_idx],
              target_names[ind_idx],
              sensorize_time_ranges[[inner_idx]][1],
              sensorize_time_ranges[[inner_idx]][2])
    ) + ylim (
      slope_limits[[1]], slope_limits[[2]]
    )
    print(plt)
  }
}
##      Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
##       -78         1         3      5843         5 618993321 
##       1%      99% 
##  0.00000 37.79059
## Warning: Removed 3192 rows containing non-finite values (stat_summary).

## Warning: Removed 3192 rows containing non-finite values (stat_summary).

## Warning: Removed 3192 rows containing non-finite values (stat_summary).
## Warning: Removed 3192 rows containing missing values (geom_point).

##      Min.   1st Qu.    Median      Mean   3rd Qu.      Max. 
##       -50         1         3      6563         5 618993321 
##          1%         99% 
##  0.02170025 32.21366215
## Warning: Removed 6292 rows containing non-finite values (stat_summary).
## Warning: Removed 6292 rows containing non-finite values (stat_summary).

## Warning: Removed 6292 rows containing non-finite values (stat_summary).
## Warning: Removed 6292 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##      -26        1        3     3082        5 67193354 
##          1%         99% 
##  0.04686717 28.25974835
## Warning: Removed 6196 rows containing non-finite values (stat_summary).
## Warning: Removed 6196 rows containing non-finite values (stat_summary).

## Warning: Removed 6196 rows containing non-finite values (stat_summary).
## Warning: Removed 6196 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##        0        1        3     3321        5 67193354 
##          1%         99% 
##  0.07331203 24.59761395
## Warning: Removed 6008 rows containing non-finite values (stat_summary).
## Warning: Removed 6008 rows containing non-finite values (stat_summary).

## Warning: Removed 6008 rows containing non-finite values (stat_summary).
## Warning: Removed 6008 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 32 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##      -78        1        3     1609        5 67193354 
##       1%      99% 
##  0.00000 37.49968
## Warning: Removed 3077 rows containing non-finite values (stat_summary).
## Warning: Removed 3077 rows containing non-finite values (stat_summary).

## Warning: Removed 3077 rows containing non-finite values (stat_summary).
## Warning: Removed 3077 rows containing missing values (geom_point).
## Warning: Removed 47 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##      -26        1        3     1893        5 67193354 
##          1%         99% 
##  0.04506428 27.75976171
## Warning: Removed 5968 rows containing non-finite values (stat_summary).
## Warning: Removed 5968 rows containing non-finite values (stat_summary).

## Warning: Removed 5968 rows containing non-finite values (stat_summary).
## Warning: Removed 5968 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##        0        1        3     1825        5 67193354 
##          1%         99% 
##  0.07214821 24.16930363
## Warning: Removed 5778 rows containing non-finite values (stat_summary).
## Warning: Removed 5778 rows containing non-finite values (stat_summary).

## Warning: Removed 5778 rows containing non-finite values (stat_summary).
## Warning: Removed 5778 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 29 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##        0        1        3     1859        5 67193354 
##          1%         99% 
##  0.09155144 22.19500837
## Warning: Removed 5570 rows containing non-finite values (stat_summary).
## Warning: Removed 5570 rows containing non-finite values (stat_summary).

## Warning: Removed 5570 rows containing non-finite values (stat_summary).
## Warning: Removed 5570 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 23 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##        0        1        3     1076        5 67193354 
##         1%        99% 
##  0.1133621 20.5456320
## Warning: Removed 5354 rows containing non-finite values (stat_summary).
## Warning: Removed 5354 rows containing non-finite values (stat_summary).

## Warning: Removed 5354 rows containing non-finite values (stat_summary).
## Warning: Removed 5354 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 11 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -9.521    7.206   16.099   29.156   30.224 7784.272 
##          1%         99% 
##   0.1695286 220.0376289
## Warning: Removed 2922 rows containing non-finite values (stat_summary).
## Warning: Removed 2922 rows containing non-finite values (stat_summary).

## Warning: Removed 2922 rows containing non-finite values (stat_summary).
## Warning: Removed 2922 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 58 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -1.775    6.878   15.259   25.090   28.028 4957.437 
##          1%         99% 
##   0.1914242 155.2232147
## Warning: Removed 2918 rows containing non-finite values (stat_summary).
## Warning: Removed 2918 rows containing non-finite values (stat_summary).

## Warning: Removed 2918 rows containing non-finite values (stat_summary).
## Warning: Removed 2918 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 52 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -1.775    6.651   14.568   21.995   26.115 4672.902 
##          1%         99% 
##   0.2189535 110.5265133
## Warning: Removed 2884 rows containing non-finite values (stat_summary).
## Warning: Removed 2884 rows containing non-finite values (stat_summary).

## Warning: Removed 2884 rows containing non-finite values (stat_summary).
## Warning: Removed 2884 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 50 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -1.775    6.553   13.957   19.055   24.373 4672.902 
##         1%        99% 
##  0.2735395 79.9243809
## Warning: Removed 2782 rows containing non-finite values (stat_summary).
## Warning: Removed 2782 rows containing non-finite values (stat_summary).

## Warning: Removed 2782 rows containing non-finite values (stat_summary).
## Warning: Removed 2782 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 45 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -9.521    6.986   15.692   27.671   29.307 7784.272 
##          1%         99% 
##   0.1620832 204.7036593
## Warning: Removed 2768 rows containing non-finite values (stat_summary).
## Warning: Removed 2768 rows containing non-finite values (stat_summary).

## Warning: Removed 2768 rows containing non-finite values (stat_summary).
## Warning: Removed 2768 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 56 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -1.775    6.474   14.225   21.115   25.391 4672.902 
##          1%         99% 
##   0.2193115 105.8992666
## Warning: Removed 2738 rows containing non-finite values (stat_summary).
## Warning: Removed 2738 rows containing non-finite values (stat_summary).

## Warning: Removed 2738 rows containing non-finite values (stat_summary).
## Warning: Removed 2738 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 49 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##   -1.775    6.332   13.599   18.378   23.756 4672.902 
##         1%        99% 
##  0.2546758 77.1370595
## Warning: Removed 2655 rows containing non-finite values (stat_summary).
## Warning: Removed 2655 rows containing non-finite values (stat_summary).

## Warning: Removed 2655 rows containing non-finite values (stat_summary).
## Warning: Removed 2655 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 38 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    0.00    6.36   13.40   17.16   22.99 2995.02 
##         1%        99% 
##  0.2973012 65.6272335
## Warning: Removed 2552 rows containing non-finite values (stat_summary).
## Warning: Removed 2552 rows containing non-finite values (stat_summary).

## Warning: Removed 2552 rows containing non-finite values (stat_summary).
## Warning: Removed 2552 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 33 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
##    0.000    6.577   13.444   16.674   22.671 3082.796 
##         1%        99% 
##  0.3615449 59.5355723
## Warning: Removed 2440 rows containing non-finite values (stat_summary).
## Warning: Removed 2440 rows containing non-finite values (stat_summary).

## Warning: Removed 2440 rows containing non-finite values (stat_summary).
## Warning: Removed 2440 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 29 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## -0.3531  0.2245  0.4480  0.5400  0.7389  8.1778 
##         1%        99% 
## 0.00763222 2.09559199
## Warning: Removed 3002 rows containing non-finite values (stat_summary).
## Warning: Removed 3002 rows containing non-finite values (stat_summary).

## Warning: Removed 3002 rows containing non-finite values (stat_summary).
## Warning: Removed 3002 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2273  0.4480  0.5361  0.7342  7.2829 
##          1%         99% 
## 0.009159536 2.034042046
## Warning: Removed 2966 rows containing non-finite values (stat_summary).
## Warning: Removed 2966 rows containing non-finite values (stat_summary).

## Warning: Removed 2966 rows containing non-finite values (stat_summary).
## Warning: Removed 2966 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 36 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2310  0.4499  0.5332  0.7307  6.1545 
##         1%        99% 
## 0.01073855 1.97110425
## Warning: Removed 2908 rows containing non-finite values (stat_summary).
## Warning: Removed 2908 rows containing non-finite values (stat_summary).

## Warning: Removed 2908 rows containing non-finite values (stat_summary).
## Warning: Removed 2908 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 33 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2415  0.4575  0.5328  0.7297  4.0528 
##         1%        99% 
## 0.01363231 1.87076200
## Warning: Removed 2788 rows containing non-finite values (stat_summary).
## Warning: Removed 2788 rows containing non-finite values (stat_summary).

## Warning: Removed 2788 rows containing non-finite values (stat_summary).
## Warning: Removed 2788 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 30 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
## -0.3531  0.2178  0.4346  0.5171  0.7139  7.2829 
##          1%         99% 
## 0.007615374 1.906133613
## Warning: Removed 2838 rows containing non-finite values (stat_summary).
## Warning: Removed 2838 rows containing non-finite values (stat_summary).

## Warning: Removed 2838 rows containing non-finite values (stat_summary).
## Warning: Removed 2838 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2249  0.4360  0.5112  0.7080  5.0495 
##        1%       99% 
## 0.0103272 1.8120624
## Warning: Removed 2764 rows containing non-finite values (stat_summary).
## Warning: Removed 2764 rows containing non-finite values (stat_summary).

## Warning: Removed 2764 rows containing non-finite values (stat_summary).
## Warning: Removed 2764 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 2 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2329  0.4426  0.5108  0.7067  4.0528 
##         1%        99% 
## 0.01213521 1.73445644
## Warning: Removed 2666 rows containing non-finite values (stat_summary).
## Warning: Removed 2666 rows containing non-finite values (stat_summary).

## Warning: Removed 2666 rows containing non-finite values (stat_summary).
## Warning: Removed 2666 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2428  0.4507  0.5132  0.7077  4.0522 
##         1%        99% 
## 0.01529687 1.66982116
## Warning: Removed 2556 rows containing non-finite values (stat_summary).
## Warning: Removed 2556 rows containing non-finite values (stat_summary).

## Warning: Removed 2556 rows containing non-finite values (stat_summary).
## Warning: Removed 2556 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 24 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.0000  0.2564  0.4604  0.5187  0.7115  3.2967 
##         1%        99% 
## 0.01969593 1.62313239
## Warning: Removed 2430 rows containing non-finite values (stat_summary).
## Warning: Removed 2430 rows containing non-finite values (stat_summary).

## Warning: Removed 2430 rows containing non-finite values (stat_summary).
## Warning: Removed 2430 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).
## Warning: Removed 20 row(s) containing missing values (geom_path).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  -1.391   1.625   3.373   7.212   7.178 342.646 
##        1%       99% 
##  0.129259 61.179988
## Warning: Removed 1884 rows containing non-finite values (stat_summary).
## Warning: Removed 1884 rows containing non-finite values (stat_summary).

## Warning: Removed 1884 rows containing non-finite values (stat_summary).
## Warning: Removed 1884 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.588   3.238   6.420   6.565 299.327 
##         1%        99% 
##  0.1404672 51.9021283
## Warning: Removed 1868 rows containing non-finite values (stat_summary).
## Warning: Removed 1868 rows containing non-finite values (stat_summary).

## Warning: Removed 1868 rows containing non-finite values (stat_summary).
## Warning: Removed 1868 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.544   3.087   5.674   5.938 266.452 
##         1%        99% 
##  0.1518194 43.7569696
## Warning: Removed 1842 rows containing non-finite values (stat_summary).
## Warning: Removed 1842 rows containing non-finite values (stat_summary).

## Warning: Removed 1842 rows containing non-finite values (stat_summary).
## Warning: Removed 1842 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.503   2.887   4.887   5.316 230.719 
##         1%        99% 
##  0.1606655 36.1927689
## Warning: Removed 1788 rows containing non-finite values (stat_summary).
## Warning: Removed 1788 rows containing non-finite values (stat_summary).

## Warning: Removed 1788 rows containing non-finite values (stat_summary).
## Warning: Removed 1788 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  -1.391   1.593   3.290   7.014   6.960 313.315 
##         1%        99% 
##  0.1469281 59.1412816
## Warning: Removed 1724 rows containing non-finite values (stat_summary).
## Warning: Removed 1724 rows containing non-finite values (stat_summary).

## Warning: Removed 1724 rows containing non-finite values (stat_summary).
## Warning: Removed 1724 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.520   3.030   5.548   5.797 266.452 
##         1%        99% 
##  0.1646254 42.9779637
## Warning: Removed 1702 rows containing non-finite values (stat_summary).
## Warning: Removed 1702 rows containing non-finite values (stat_summary).

## Warning: Removed 1702 rows containing non-finite values (stat_summary).
## Warning: Removed 1702 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.487   2.837   4.766   5.198 230.719 
##         1%        99% 
##  0.1756477 34.7989555
## Warning: Removed 1658 rows containing non-finite values (stat_summary).
## Warning: Removed 1658 rows containing non-finite values (stat_summary).

## Warning: Removed 1658 rows containing non-finite values (stat_summary).
## Warning: Removed 1658 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.487   2.744   4.331   4.843 267.008 
##         1%        99% 
##  0.1970154 29.4623619
## Warning: Removed 1596 rows containing non-finite values (stat_summary).
## Warning: Removed 1596 rows containing non-finite values (stat_summary).

## Warning: Removed 1596 rows containing non-finite values (stat_summary).
## Warning: Removed 1596 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   0.000   1.498   2.703   4.055   4.590 117.370 
##         1%        99% 
##  0.2263141 26.0516645
## Warning: Removed 1516 rows containing non-finite values (stat_summary).
## Warning: Removed 1516 rows containing non-finite values (stat_summary).

## Warning: Removed 1516 rows containing non-finite values (stat_summary).
## Warning: Removed 1516 rows containing missing values (geom_point).
## Warning: Removed 1 rows containing missing values (geom_hline).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.61658  0.01882  0.05373  0.14672  0.12996 51.86043 
##       1%      99% 
## 0.000000 1.602497
## Warning: Removed 1014 rows containing non-finite values (stat_summary).
## Warning: Removed 1014 rows containing non-finite values (stat_summary).

## Warning: Removed 1014 rows containing non-finite values (stat_summary).
## Warning: Removed 1014 rows containing missing values (geom_point).
## Warning: Removed 107 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.44002  0.02012  0.05279  0.13079  0.12199 36.90202 
##       1%      99% 
## 0.000000 1.359855
## Warning: Removed 1005 rows containing non-finite values (stat_summary).
## Warning: Removed 1005 rows containing non-finite values (stat_summary).

## Warning: Removed 1005 rows containing non-finite values (stat_summary).
## Warning: Removed 1005 rows containing missing values (geom_point).
## Warning: Removed 91 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.24983  0.02104  0.05139  0.11561  0.11315 28.79895 
##       1%      99% 
## 0.000000 1.165998
## Warning: Removed 998 rows containing non-finite values (stat_summary).
## Warning: Removed 998 rows containing non-finite values (stat_summary).

## Warning: Removed 998 rows containing non-finite values (stat_summary).
## Warning: Removed 998 rows containing missing values (geom_point).
## Warning: Removed 83 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.10133  0.02189  0.04959  0.09922  0.10230 19.97224 
##        1%       99% 
## 0.0000000 0.9487073
## Warning: Removed 984 rows containing non-finite values (stat_summary).
## Warning: Removed 984 rows containing non-finite values (stat_summary).

## Warning: Removed 984 rows containing non-finite values (stat_summary).
## Warning: Removed 984 rows containing missing values (geom_point).
## Warning: Removed 74 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.61658  0.01998  0.05513  0.14656  0.13064 51.86043 
##       1%      99% 
## 0.000000 1.587382
## Warning: Removed 927 rows containing non-finite values (stat_summary).
## Warning: Removed 927 rows containing non-finite values (stat_summary).

## Warning: Removed 927 rows containing non-finite values (stat_summary).
## Warning: Removed 927 rows containing missing values (geom_point).
## Warning: Removed 92 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.24983  0.02200  0.05261  0.11478  0.11359 28.79895 
##       1%      99% 
## 0.000000 1.110718
## Warning: Removed 922 rows containing non-finite values (stat_summary).
## Warning: Removed 922 rows containing non-finite values (stat_summary).

## Warning: Removed 922 rows containing non-finite values (stat_summary).
## Warning: Removed 922 rows containing missing values (geom_point).
## Warning: Removed 84 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.10133  0.02272  0.05053  0.09814  0.10308 19.97224 
##        1%       99% 
## 0.0000000 0.9001359
## Warning: Removed 909 rows containing non-finite values (stat_summary).
## Warning: Removed 909 rows containing non-finite values (stat_summary).

## Warning: Removed 909 rows containing non-finite values (stat_summary).
## Warning: Removed 909 rows containing missing values (geom_point).
## Warning: Removed 33 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.05653  0.02334  0.04904  0.08823  0.09579  8.97419 
##        1%       99% 
## 0.0000000 0.7429484
## Warning: Removed 881 rows containing non-finite values (stat_summary).
## Warning: Removed 881 rows containing non-finite values (stat_summary).

## Warning: Removed 881 rows containing non-finite values (stat_summary).
## Warning: Removed 881 rows containing missing values (geom_point).
## Warning: Removed 31 row(s) containing missing values (geom_path).

##     Min.  1st Qu.   Median     Mean  3rd Qu.     Max. 
## -0.04695  0.02416  0.04825  0.08137  0.09063  8.97419 
##        1%       99% 
## 0.0000000 0.6456088
## Warning: Removed 836 rows containing non-finite values (stat_summary).
## Warning: Removed 836 rows containing non-finite values (stat_summary).

## Warning: Removed 836 rows containing non-finite values (stat_summary).
## Warning: Removed 836 rows containing missing values (geom_point).
## Warning: Removed 13 row(s) containing missing values (geom_path).